<?php
ini_set("display_errors", "On"); 
error_reporting(E_ALL | E_STRICT);

require "vendor/autoload.php";
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
helloworld();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function micro_time()
{
   list($usec, $sec) = explode(" ", microtime());
   return ($usec * 1000000 + $sec * 1000000);
}

$starttime = micro_time();
$ch = curl_init();
$header = [
   "name: cxy"
];

$url = "http://www.baidu.com?a=a";
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, "0");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);

// $info = curl_getinfo($ch);
// print_r($info);
$output = curl_exec($ch);
print_r($header);
var_dump($output);
curl_close($ch);
$endtime = micro_time();
var_dump("时间差:" . ($endtime - $starttime));
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->set('a', 'a');
$starttime = micro_time();
$res = $redis->get('a');
$endtime = micro_time();
var_dump("时间差:" . ($endtime - $starttime));
var_dump($res);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$client = new \Predis\Client([
    'scheme' => 'tcp',
    'host'   => '127.0.0.1',
    'port'   => 6379,
 ]);
 $starttime = micro_time();
 $client->set('a', 'b');
 $endtime = micro_time();
 var_dump("时间差:" . ($endtime - $starttime));
 $res = $client->get('a');
 var_dump($res);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$ip   = "10.16.19.135";
$port = "3306";
$user = 'root';
$pass = '123456';
$db   = "test";
$conn = new mysqli($ip, $user, $pass, $db, $port);
if (mysqli_connect_errno($conn)) {
    echo "连接 MySQL 失败: ".mysqli_connect_error()."\n";
}
$starttime = micro_time();
$res = mysqli_query($conn, "select * from user limit 1");
$endtime = micro_time();
var_dump("时间差:" . ($endtime - $starttime));
print_r($res);
mysqli_close($conn);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$ip   = "10.16.19.135";
$port = "3306";
$user = 'root';
$pass = '123456';
$db   = "test";
var_dump(2);
$conn = new mysqli($ip, $user, $pass, $db, $port);
if (mysqli_connect_errno($conn)) {
    echo "连接 MySQL 失败: " . mysqli_connect_error() . "\n";
}
$starttime = micro_time();
$name = 'cxy';
$sql = "select id, name from user where `name` = ? limit 1";
$stmt = $conn->prepare($sql);
$stmt->bind_param('s', $name);
$stmt->execute();
$stmt->bind_result($id, $name);
while ($stmt->fetch()) {
    echo "第" . $id . "条： " . $name . "<br>";
}
$conn->close();
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$user = 'root';
$pass = '123456';
$dsn  = 'mysql:host=10.16.19.135;port=3306;dbname=test';
try {
    $dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象
    echo "连接成功\n";
    $dbh->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
    echo "set attr\n";
    $stmt = $dbh->query('select * from user limit 1');
    echo "query\n";
    $starttime = micro_time();
    $rows = $stmt->fetchAll();
    $endtime = micro_time();
    var_dump("时间差:" . ($endtime - $starttime));
    print_r($rows);
} catch (PDOException $e) {
    die("Error!: ".$e->getMessage()."\n");
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$user = 'root';
$pass = '123456';
$dsn  = 'mysql:host=10.16.19.135;port=3306;dbname=test';
try {
    $dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象
    echo "连接成功\n";
    $dbh->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);
    echo "set attr\n";
    $starttime = micro_time();
    $stmt = $dbh->prepare("select * from user where `name` = ? limit 1");
    echo "prepare\n";
    $stmt->bindValue(1, 'test');
    $stmt->execute();  //执行一条预处理语句 .成功时返回 TRUE, 失败时返回 FALSE
    print_r($stmt->errorInfo());
    print_r($dbh->errorInfo());
    $rows = $stmt->fetchAll();
    print_r($rows);
} catch (PDOException $e) {
    die("Error!: ".$e->getMessage()."\n");
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

http_response_code(500);